Edge case defect when importing the first test node into dashboard #763
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Fixed for an edge case defect/bug when importing the first test node using the dashboard via a diagnostics file.
Procedure to replicate bug:
File "/home/XXX/Projects/pip-python-matter-server/venv/lib/python3.11/site-packages/matter_server/server/device_controller.py", line 857, in import_test_node next_test_node_id = max(*(x for x in self._nodes), TEST_NODE_START) + 1 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ TypeError: 'int' object is not iterable
Fix for defect:
In the "import_test_node" function in device_controller.py, a check was coded for an empty dict for self._nodes and if empty set the next_test_node_id to TEST_NODE_START